package main
import "fmt"

// 空接口：万能类型（基本类型都实现了）

func myFunc(arg interface{}){
	fmt.Println("my func arg:",arg)

	// 类型断言.()
	value,ok := arg.(string)
	if !ok {
		fmt.Println("NOT STRING")
	}else {
		fmt.Printf("arg type is %T\n",value)
	}
}

type Book struct{
	name string
}

func main(){
	b := &Book{"《Go语言实战》"}

	myFunc(*b)
	myFunc(100)
	myFunc(true)

	myFunc("hahaha")

}